1. Field of the Invention
The present invention relates to a print processing apparatus capable of executing print processing in page units.
2. Discussion of the Related Art
Small-size page printers of the electrophotographic type have been widely used. These printers are able to digitally print images, graphics, characters and so forth, and moreover, are able to use description languages to control the enlargement, rotation, transformation and the like of graphics, characters and so forth. Examples of these description languages are PostScript (Trademark of Adobe Systems Inc.), Interpress (Trademark of Xerox Corporation), Acrobat (Trademark of Adobe Systems Inc.), and GDI (Graphics Device Interface, Trademark of Microsoft Corporation).
Input data formed by the description language is constituted by a sequence of commands and/or data in which drawing commands and/or portions of data representing an image, graphics and characters arbitrarily positioned in a page, are arranged in an arbitrary order. When the page printer prints the input data, it must first be rasterized before printing. Rasterization is the process that expands the input data into a series of dots or pixels which crosses the page or a part of the page to form a raster scanning line. The conventional page printer rasterizes the input data for the whole page before printing and stores the rasterized data in a page buffer. This requires a large capacity memory to store the raster data for the whole page. In particular, color page printers of the electro-photographic type need raster data for the toner of four colors Cyan (C), Magenta (M), Yellow (Y) and Black(B.sub.K). In addition, a higher image quality than that of the monochrome page printer is required. Therefore, the color page printer generally requires additional data for each pixel and an even larger amount of memory capacity.
To overcome the necessity for larger memory capacities, a band memory technique has been devised. The band memory technique does not rasterize all portions of input data for the whole page before printing by the page printer. The band memory technique converts the input data into intermediate data because it is relatively easy and takes a shorter time than rasterizing the input data. The conversion is performed by dividing the page into plural regions (bands), each of which is adjacent to the other regions. Portions of the intermediate data corresponding to each of the bands are stored and transferred to a rasterizing element. The rasterizing element rasterizes the intermediate data and stores it in a buffer memory corresponding to the band. In the band memory technique, an additional memory for storing the portions of intermediate data is required. However, it is possible to reduce the buffer memory, which requires a large capacity for storing the raster data.
In the ordinary band memory technique it is necessary to complete the expansion of the intermediate data into raster data in the next band before printing of the raster data of a certain band is completed. However, in the case where the input data contains complex graphics drawing commands or image drawing commands dealing with a large amount of data, or a specific band in a page contains complex graphics drawing commands or image drawing commands, there is a possibility that the intermediate data cannot be rasterized in time for printing of the next band.
Therefore, use of an exclusive piece of hardware is suggested for accelerating the speed in expanding the intermediate data into the raster data. As described above, the objects to be drawn in a page include images, graphics and characters, each of which requires a specific process corresponding to the type of the object. For example, in the case of an image, resolution conversion, affine transformation, and interpolation or coloring process and the like are required. In the case of graphics, coordinate transformation, vector-raster transformation, a painting process and the like are required. In the case of a character, transformation of the outline coordinates, hinting, vector-raster transformation, a painting process and the like are required. Exclusive hardware corresponding to each of these processes are necessary. However, a problem arises in that the amount of exclusive hardware to be added is increased in order to reduce the amount of memory required. Thus, the system becomes expensive as a whole.
Conventionally, to resolve the above-described problem, an attempt to make the functions variable by reconfiguring the programmability or configuration of the hardware and to implement many functions at a high speed with a small number of hardware pieces corresponding to all functions has been devised. An example of such devices is disclosed in Japanese Patent Applications Laid-Open Nos. 6-131155 (1994, a counterpart of U.S. Pat. No. 5,301,344) and 6-282432 (1994).
Japanese Patent Application Laid-Open No. 6-131155 accomplishes various kinds of image processing with a small number of hardware pieces by reconfiguring means for operating data in a data storage area and means for generating addresses for obtaining the data stored in the data storage. The configuration can be reconfigured for image processing, in which the address information has an important meaning, but cannot be reconfiguration for the vector processing necessary for processing graphics or characters. The image processing is always executed after the reconfiguration is performed. Therefore, if various images arbitrarily appear, as in the case of the page description language (PDL), the problem arises that the time required for reconfiguration is increased. Furthermore, since the overwriting unit is set for the process having the largest size, waste occurs when reconfiguring for various size processes.
The method disclosed in Japanese Patent Application Laid-Open No. 6-282432 provides plural operation circuits that can be operated in parallel to control the data flow. This method is suitable for the frequent use of a few types of operation circuits for a certain kind of image processing. However, if it is applied to the mixing of various kinds of drawing objects such as images, graphics and characters, many different kinds of operation circuits are required. Therefore, reduction of the amount of hardware cannot be realized.